When they were originally designed, personal computers were commonly used for just a relatively narrow range of applications. Computers, including portable and hand-held computing devices, are now used for a wide variety of applications and communication formats. As a result, computer users currently must organize much more information, as well as different types of information, than when computers were originally designed.
Conventional computer file systems force users to use and remember arbitrary, out-of-context filing structures, including file names, hierarchical directory structures, etc. In contrast, innate human memory works by association so that events are often remembered as happening in relationship to other events. With the significant numbers of computer files and computer information that many users interact with, conventional computer filing structures and organizations can make it difficult or impossible for users to find and access computer information they previously worked with or used.
Accordingly, the present invention provides a calendar-based interface system that accommodates innate human memory by associating computer-related events, and other events, based upon when they occur. The calendar user interface system utilizes a calendar as a top-level user interface for accessing computer information. The calendar-based interface system utilizes system-wide monitoring of the user and associations between various computer files, people, and other information related to the user. This allows a user to view and assign searchable metadata (e.g., metadata relating to associated dates) and to retrieve computer information that matches selected metadata.
Like printed calendars, conventional computer calendars typically require that most user-specific appointments, meetings, etc. be added or entered manually by users. In addition, many such calendars include events that are not relevant to many users, such as inapplicable holidays. The system of the present invention automatically associates and tracks time-related events, user computer activities, and information related to when the user works with documents, etc. on the computer.
In one implementation, a calendar-based interface system of this invention automatically integrates time-based information with metadata tagging to determine relationships between computer information (e.g., a family vacation may be associated with when vacation photos were taken and subsequently shared). The user can view an overview user interface calendar that includes various visualizations to provide a general overview of the user's activity over a time period. Alternatively, the user can view a context-specific calendar display in which time is used as a filter for a particular user context (e.g., a family vacation and items that relate to the vacation over time). The user context can be determined automatically, for example, by monitoring the user's computer activities and identifying from metadata associated with the computer activities what information is currently relevant to the user. The context-specific calendar display can further be used by the user to form a query for accessing relating information.
As a result, the calendar-based interface system of this invention utilizes a calendar as a dynamic application that does not require direct user input and can function as a tool for searching past events and computer information processed on the computer. This system provides a user interface that displays various types of information in the context of a calendar to provide users with event associations with which users can better locate and retrieve computer information.
Additional objects and advantages of the present invention will be apparent from the detailed description of the preferred embodiment thereof, which proceeds with reference to the accompanying drawings.